//
// Created by Administrator on 2023/6/2.
//
#pragma once
#ifndef NEW_TABLE_H
#define NEW_TABLE_H

#include "../../Widget/LDF_Widget/header/LDF_Widget.h"
#include "../../LDF_Table/header/LDF_Table.h"


#include "../../Table_Menu/header/Table_Menu.h"


#include "../../Descriptive_Widget/header/Descriptive_Widget.h"


#include <QMenu>
#include <QFileDialog>


#define TABLE_WIDTH 10
#define  TABLE_HEIGHT 70


#define BORDER_LEFT 5
#define BORDER_TOP 50



class New_Table: public LDF_Widget
{
    Q_OBJECT
public:
    New_Table();


    New_Table(qint32, qint32);


    ~New_Table();


    void Control_Profile();


    void resizeEvent(QResizeEvent* event) override;


    void Set_Table_Size(qint32 rows, qint32 columns);


    void Set_Read_Mode(int mode);


    QPoint Get_Table_Size();



    void Add_Vector(QVector<QVector<QString>> QVec);


public slots:
    void Read_CSV();


    void Get_A_Columns();


    void Set_Columns_num();



private:
    qint32 rows {0};
    qint32 columns {0};


    LDF_Table* table;


    int read_mode {0};


    QVector<double> *qvec_float;

    int columns_num;

public:


    Descripttive_Dialog* descripttive_dialog;
    Descriptive_Widget* descriptive_widget;


    Analysis_Menu_Button* analysis_m_b;
    Visual_Menu_Button* visual_m_b;
};





#endif //NEW_TABLE_H
